35.3 使用Narayana事务管理器

Narayana是一个流行的开源JTA事务管理器实现,目前只有JBoss支持。你可以使用spring-boot-starter-jta-narayana starter添加合适的Narayana依赖,像Atomikos和Bitronix那样,Spring Boot将自动配置Narayana,并对你的beans后处理(post-process)以确保正确启动和关闭。

Narayana事务日志默认记录到应用home目录(放置应用jar的目录)的transaction-logs目录下,你可以通过设置application.properties中的spring.jta.log-dir属性自定义该目录。以spring.jta.narayana.properties开头的属性可用于自定义Narayana配置,具体参考NarayanaProperties

为了确保多事务管理器能够安全配合相应资源管理器,每个Narayana实例必须配置唯一的ID,默认ID设为1。为确保生产环境中ID唯一性,你可以为应用的每个实例配置不同的spring.jta.transaction-manager-id属性值。